import Reac, { useState, useEffect } from 'react'

export default function Test(props) {
  // 作用: 模拟类组件中生命周期钩子函数
  // 注意: 只模拟了componentDidMount, componentDidUpdate,componentWillUnmount
  // 默认情况下: 外层函数模拟挂载和更新, 内部的函数模拟卸载(不需要可以不写)
  // 如果第二个参数传入一个空数组,则外层只模拟挂载
  // 如果第二个参数的数组中传入props或state数据,则表示监听这些数据.如果监听的数据中有一个发生不能变化,则外层就模拟更新.如果都没有变化,则外层就不模拟更新
  useEffect(() => {
    console.log('挂载或更新')

    return () => {
      console.log('卸载')
    }
  }, [props.c])
  return <div>Test,{props.c}</div>
}
